<?php
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
	/**
	 * Função responsável por redirecionar todo erro para o módulo error.
	 */
	protected function _initError()
	{
		$front = Zend_Controller_Front::getInstance();
		$front->throwExceptions(true);
		$front->registerPlugin(new Zend_Controller_Plugin_ErrorHandler(array(
            'module'     => 'error',
            'controller' => 'error',
            'action'     => 'error'
            )));
	}

	/**
	 * Função responsável por registrar todo o conteúdo do arquivo config.ini
	 * como 'config', para uso posterior na aplicação
	 */
	protected function _initConfig()
	{
		Zend_Registry::set('config', new Zend_Config($this->getOptions()));
			
	}

	/**
	 * Loading my modules
	 */
	protected  function _initAutoload()
	{
		$loader = Zend_Loader_Autoloader::getInstance();
		$loader->setFallbackAutoloader(true);
		$loader->suppressNotFoundWarnings(false);

		$front = $this->bootstrap("frontController")->frontController;
		$modules = $front->getControllerDirectory();
		$default = $front->getDefaultModule();

		foreach (array_keys($modules) as $module) {
			if ($module === $default) {
				continue;
			}
			$moduleLoader = new Zend_Application_Module_Autoloader(			
				array(
	        		'namespace' => ucfirst($module).'_',
	        		'basePath'  => dirname(__FILE__) . '/modules/'.$module,
				)
			);

		}



	}

}

